<?php
namespace app\admin\controller;
use think\Db;
use think\Controller;
class Article extends Base {
    function index(){
        $article_list=Db::name('article')->alias('a')->join('category w','a.category=w.id')->field('a.*,w.name')->select();
        $this->assign('article_list',$article_list);
        return $this->fetch('article');
    }
    function edit(){
        $id=input('get.id');//主贴的ID
        $article=Db::name('article')->where('id',$id)->find();//根据主贴ID在article表中查找对应的文章
        $category_list=Db::name('category')->where('pid',0)->select();//查找所有没有子节点的类别
        $defatult_category=Db::name('category')->where('id',$article['category'])->find();//根据文章的category属性，查找在分类表中的信息（实际就是该文章在category表中的ID）
        $this->assign('title',$article['title']);
        $this->assign('tag',$article['tag']);
        $this->assign('content',$article['content']);
        if($defatult_category['pid']==0){ //判断是否是子节点，等于0表示不是子节点
            $category_default=$defatult_category['id'];
            $this->assign('category_list',$category_list);
            $this->assign('category_default',$category_default);
            $pid_test=Db::name('category')->where('pid',$category_default)->count();//查找文章ID对应的category表中的ID，下面是否有所属子节点
            if($pid_test>0){ //判断该节点下面是否有子节点，大于0表示下面有子节点
                $category_b_list=Db::name('category')->where('pid',$defatult_category['id'])->select();
                $this->assign('category_b_list',$category_b_list);
                $this->assign('category_b_default',"no");
                $this->assign('pid_test','success');
                return $this->fetch('edit');
            }else{ //下面没有子节点
                return $this->fetch('edit');
            }
        }else{ //判断是子节点
            $category_default=$defatult_category['pid'];//获取文章在category表中的PID，用于第一级栏目显示
            $this->assign('category_list',$category_list);
            $this->assign('category_default',$category_default);
            $category_b_list=Db::name('category')->where('pid',$defatult_category['pid'])->select();
            $category_b_default=$defatult_category['id'];//获取文章在category中的ID，用于子栏目显示
            $this->assign('category_list',$category_list);
            $this->assign('category_default',$category_default);
            $this->assign('category_b_default',$category_b_default);
            $this->assign('category_b_list',$category_b_list);
            $this->assign('pid_test','success');
            return $this->fetch('edit');
        }
    }
    function delete(){
        $id=input('get.id');
        Db::name('article')->where('id',$id)->delete();
        $this->success('删除成功！');
    }
    function update(){
        $category_m_id=input('category_m_id');//主节点
        $category_b_id=input('category_b_id');//根节点
        $id=input('id');
        $category=!$category_b_id?$category_m_id:$category_b_id;
        $title=input('title');
        $content=input('content');
        $tag=input('tag');
        $publictime=date("Y-m-d H:i:s");
        $intro=substr(input('intro'),0,150);
        $imgsrc="/public/static/assets/i/f10.jpg";
        $data=[
            'title'=>$title,
            'content'=>$content,
            'tag'=>$tag,
            'publictime'=>$publictime,
            'intro'=>$intro,
            'username'=>"管理员",
            'imgsrc'=>$imgsrc,
            'category'=>$category
        ];
        Db::name('article')->where('id',$id)->update($data);
        return 'success';
    }
}